# flask最后后端程序，负责处理前端的请求，请求是多种多样的
# 具体来说，请求可以是和router章节中的一样，去请求网页，一般来说router其实是吧html绑定到url上，
# 虽然前面是把字符绑定到url上，因为html允许没有任何标签的纯文本
# 此外，另外一种请求就是前端得到的各种表单form，例如用户登录，用户名和密码都是表单而登录按钮就是post请求


# 本章将讲解form表单如何和后端的flask程序交互
# 一般来说，flask使用render_template来渲染一个html

import sys
from flask import Flask, render_template
from pathlib import Path

if __name__ == "__main__":
    sys.path.append(
        Path(__file__).parent.parent.__str__()
    )

from base_frame import Application

app = Flask(__name__)

# base_path = Path(__file__).parent
# print(base_path)

# 需要注意的是，render_templates 中不是html文件的路径，而是需要html文件的名字即可
# flask会自动的去templates文件夹下查找
# 此外，flask是从实例化的Application所在的文件开始找，因此这里用写好的框架的Application中的app是找不到的
# 注意，提交之后在UserID、Password等值被嵌入到url中了，此外注意请求的类型需要在html中写好，然后router中要允许该请求
# @Application.app.route("/login")
@app.route("/", methods=["GET", "POST"])
def index():
    # 
    return render_template(template_name_or_list="login.html")


if __name__ == "__main__":
    # app = Application()
    # app.start_app()
    app.run()